﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using DLTN.Entities;
using DLTN.Data;
using System.Xml;
using System.Net;
using System.Text;

public partial class Tour_Controls_ControlChiTietTourLienQuanContent : System.Web.UI.UserControl
{
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            if (Request.Params["Id"] != null)
            {
                IdTour.Value = Request.Params["Id"].ToString();
                int idGuid = Convert.ToInt32(IdTour.Value);
                HienThiTourLienQuan(idGuid);
                HienThiDieuKhoan(idGuid);
                HienThiGioiThieu_Visa_Tip(idGuid);
            } 
           
            this.lblContent.Text = this.GetWeatherInfo();
        }
    }

    private void HienThiDieuKhoan(int Id)
    {
        Tour ent_Tour = DataRepository.TourProvider.GetById(Id);
        if (ent_Tour.DieuKhoan != null)
            ltrDieuKhoan.Text = ent_Tour.DieuKhoan;
        else
            ltrDieuKhoan.Text = "Chưa cập nhật dữ liệu";
    }

    private void HienThiGioiThieu_Visa_Tip(int Id)
    {
        Tour ent_Tour = DataRepository.TourProvider.GetById(Id);
        int idSubTour = Convert.ToInt32(ent_Tour.IdSubTour);
        SubTour ent_SubTour = DataRepository.SubTourProvider.GetById(idSubTour);

        // Hiển thị Giới thiệu
        if (ent_SubTour.GioiThieu != null)
            ltrGioiThieu.Text = ent_SubTour.GioiThieu;
        else
            ltrGioiThieu.Text = "Chưa cập nhật dữ liệu";

        // Hiển thị Visa
        if (ent_SubTour.Visa != null)
            ltrVisa.Text = ent_SubTour.Visa;
        else
            ltrVisa.Text = "Chưa cập nhật dữ liệu";

        // Hiển thị Tip
        if (ent_SubTour.Tip != null)
            ltrTip.Text = ent_SubTour.Tip;
        else
            ltrTip.Text = "Chưa cập nhật dữ liệu";
    }
    private void HienThiTourLienQuan(int Id)
    {
        int TotalRows = 0;
        string strHTML = "";
        string whereClause = "1=1";

        // Get Id SubTour từ Tour hiện tại
        Tour ent_Tour = DataRepository.TourProvider.GetById(Id);
        int idSubTour = Convert.ToInt32(ent_Tour.IdSubTour);


        whereClause += " and TrangThai = 1 and IdSubTour = " + idSubTour + " and Id not in('" + ent_Tour.Id + "')";
        TList<Tour> TList_TourLienQuan = DataRepository.TourProvider.GetPaged(whereClause, "NgayCapNhat DESC", 0, 5, out TotalRows);
        if (TList_TourLienQuan.Count > 0)
        {
            for (int i = 0; i < TList_TourLienQuan.Count; i++)
            {
                if(i==0)
                    strHTML += "<div style='height:5px;width:350px;float:left'></div>";

                strHTML += "<div style='float:left; margin-left:3px;'>";
                strHTML += "<img src='../../../Images/dltn/bullet.png' />&nbsp;</div>";
                strHTML += "<div class='link-tour'><a href='../../../" + "Tour/" + TList_TourLienQuan[i].Id + "/" + TList_TourLienQuan[i].IdSubTour + "/" + GetTieuDe(TList_TourLienQuan[i].TieuDe) + ".aspx'>" + TList_TourLienQuan[i].TieuDe + " (" + TList_TourLienQuan[i].NgayCapNhat.ToShortDateString() + ")</a></div>";
                strHTML += "<div style='height:5px;width:350px;float:left'></div>";
            }

            ltrContent.Text = strHTML;
        }
    }

    public string GetTieuDe(object Char)
    {
        string s = Char.ToString();
        return Common.ConvertToUnSign(s);
    }

    public string GetWeatherInfo()
    {
        try
        {
            WebClient client = new WebClient();
            client.Encoding = Encoding.UTF8;

            string content = client.DownloadString("http://www.khituongvietnam.gov.vn");

            string strBegin = @"<!-- Begin Display content -->";
            string strEnd = "<TD class=\"thoitiet_rightbox_ver\"></TD>";
            content = content.Substring(content.IndexOf(strBegin) + strBegin.Length, content.IndexOf(strEnd) - content.IndexOf(strBegin) - strBegin.Length);

            return content;
        }
        catch (Exception ex)
        {
            return "Loading....";
        }
    }
}